Skip to main content

GitHub Connector

SyncNow works with connectors to synchronize data between various work systems. Each system connector is tailored to connect to a specific work system. The GitHub connector allows users to sync issues from GitHub repositories to other work systems such as Jira, Azure DevOps, and more. This guide provides detailed steps on setting up the GitHub connector, configuring sync processes, and managing synchronization settings.

Setting Up the GitHub Connector

To set up the GitHub connector in SyncNow, follow these steps:

  1. Navigate to the Connectors Page

    • Access the "Connectors" page from the main menu.
  2. Add a New Connector

    • Press the "Add Connector" button to create a new connector.
    • Select "GitHub" from the list of available connectors.
  3. Configure the GitHub Connector

    • Name: Enter a unique name for the GitHub connector.
    • Username and Token: Provide the GitHub username and a personal access token. The token must have the necessary permissions to access the repository and manage webhooks.
  4. Webhooks Security Configuration

    • Authentication Method: Choose how to authenticate webhooks with SyncNow:
      • Anonymous: No authentication required.
      • IP Address/Range: Restrict access to specific IP addresses or ranges.
      • SyncNow Username/Token: Use SyncNow credentials for authentication.
  5. Save and Validate

    • Click the "Save" button to save the connector settings.
    • Press the "Validate" button to ensure the connection to GitHub is correctly configured.

Once the GitHub connector is set up and validated, users can proceed to create sync processes to synchronize data between GitHub and other work systems.

Creating a Sync Process

After configuring the GitHub connector, follow these steps to create a sync process:

  1. Navigate to the Sync Processes Page

    • Access the "Sync Processes" page from the main menu.
  2. Add a New Sync Process

    • Press the "Add Sync Process" button to start configuring a new sync process.
  3. Select GitHub Repository

    • Choose the GitHub repository you want to sync issues from.
  4. Configure Sync Filters

    • Filter Criteria: Select the GitHub fields and specify the values to filter issues. Multiple fields can be selected, and they will be checked using an AND clause.
    • Example: Filter issues where label = bug and state = open.
  5. Select Synchronization Mapping

    • Predefined Template: Choose from predefined templates for mapping issues to another work system.
    • Custom Mapping: Create your own mapping by selecting:
      • Entity Mapping: Map GitHub issues to corresponding entities in the target work system (e.g., Jira tickets, Azure DevOps work items).
      • Field Mapping: Map specific fields from GitHub issues to fields in the target work system.
  6. Synchronization Method

    • Real-time Sync: Select this option to use webhooks for real-time synchronization. SyncNow will automatically register the necessary webhooks in GitHub during the activation of the first sync process.
    • Timer Sync: Choose this option to synchronize data at regular intervals.
  7. Save and Activate

    • Click the "Save" button to save the sync process settings.
    • Activate the sync process to start synchronizing data between GitHub and the target work system.

Managing Synchronization

  • Webhooks Management: If real-time sync is enabled, webhooks will be automatically registered and managed by SyncNow. Ensure that the webhooks' authentication settings are properly configured to maintain secure communication.
  • Monitor and Adjust Sync Processes: Regularly review and adjust sync processes to ensure they are functioning correctly and meeting your synchronization needs.

By following these steps, users can effectively set up and manage GitHub connectors and sync processes in SyncNow, ensuring seamless and efficient synchronization of issues between GitHub and other work systems.